#!/usr/bin/env python
# coding=utf-8

import pandas as pd
import os

# 获取当前文件的父路径
f_path = os.getcwd()


def read():
    # 数据文件路径
    rpath_csv = f_path + r'\data\city_station.csv'

    # 读取数据
    csv_read = pd.read_csv(rpath_csv)

    # 显示前100条数据
    print(csv_read.head(100))


'''
函数解析：
read_csv(filepath_or_buffer,sep,header,names,skiprows,na_values,encoding,nrows)
按指定格式读取csv文件。
常见参数解析：
filepath_or_buffer:字符串，表示文件路径；
sep: 字符串，指定分割符，默认是’,’;
header:数值， 指定第几行作为列名(忽略注解行)，如果没有指定列名，默认header=0; 如果指定了列名header=None;
names: 列表，指定列名，如果文件中不包含header的行，应该显性表示header=None。
skiprows：列表，需要忽略的行数（从0开始），设置的行数将不会进行读取。
na_values：列表，设置需要将值替换成NAN的值，pandas默认NAN为缺省，可以用来处理一些缺省、错误的数值。
encoding：字符串，用于unicode的文本编码格式。例如，"utf-8"或"gbk"等文本的编码格式。
nrows：需要读取的行数。
'''


def write():
    path_csv = f_path + r'\data\temp.city.csv'
    # 写入数据{列名:列值}
    data = {'站点名': ['北京', '上海', '广州', '重庆', '江苏'],
            '代号': ['BJ', 'SH', 'GZ', 'CQ', 'JS']}
    # 数据初始化为dataFrame对象
    df = pd.DataFrame(data)
    df.to_csv(path_csv,index=False)
'''
函数解析：
to_csv(path_or_buf,sep,na_rep,columns,header,index)
path_or_buf：字符串，文件名、文件具体、相对路径、文件流等；
sep：字符串，文件分割符号；
na_rep：字符串，将NaN转换为特定值；
columns：列表，选择部分列写入；
header：None,写入时忽略列名；
index：False则选择不写入索引,默认为True。

'''


if __name__ == '__main__':
    read()
    write()
